// web/src/lib/types.ts
// 扩展next-auth的session.user的type
import {type DefaultSession} from "next-auth";

export enum UserRole {
    'ADMIN' = 'ADMIN',
    'USER' = 'USER'
}

export type ExtendedUser = DefaultSession['user'] & {
    // role: 'ADMIN' | 'USER'
    role: UserRole
    isTwoFactorEnable: boolean
    isOAuth: boolean // 是否是第三方登录, 第三方无法修改一些信息
    name: string
    email: string
}

declare module 'next-auth' {
    interface Session {
        user: ExtendedUser
    }
}